<?php
class UserModel extends Model {

    // 自动验证设置
    protected $_validate = array(
        array('user_name', 'checkUserName', '用户名必须为3-14个字节，并只能是中文字母数字组合！', 0, 'callback'),
        array('user_name', '', '用户名已存在！', 0, 'unique'),
        array('password', '/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/', '密码必须为字母开头，5-16位字母数字下划线组合！', 2, 'regex'),
        array('re_password', 'password', '两次密码不相同！', 0, 'confirm'),
        array('user_type_id', array(1, 2, 3), '请选择用户类型！', 0, 'in'),
        array('cat_id', 'number', '请选择教师类型！', 0)
    );
    
    /* 自动完成 */
    protected $_auto = array(
        array('password', 'sha1', 3, 'function')
    );
    
    /* 检测用户名 */
    function checkUserName() {
        $user_name = trim($_POST['user_name']);
        if (preg_match('/^[\x{4e00}-\x{9fa5}a-zA-Z0-9_-]+$/u', $user_name)) {
            $str_len = strlen(iconv('UTF-8', 'GBK', $user_name));
            if ($str_len >= 3 && $str_len <= 14) {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
    }

}
?>